{{tag>Bionic Eoan calcul_collaboratif BROUILLON}}
----

====== Boinc : calculs distribués sur Internet ====== 

{{ :applications..boinc_logo_july_2007.png|}}

**BOINC**, acronyme de **B**erkeley **O**pen **I**nfrastructure for **N**etwork **C**omputing est un plate-forme de calcul distribué mise au point par l'université de Berkeley. Ce programme permet à n'importe quelle personne volontaire de participer à des projets scientifiques en mettant à disposition la puissance de calcul inutilisée de votre ordinateur au profit de la science. Différents projets de calculs sont en cours d'avancement, vous pouvez rejoindre ceux de votre choix à tous moments.
Il n'y a pas de configuration minimale, n'importe quelle ordinateur est capable de faire tourner ce logiciel. Les résultats dépendront seulement de la puissance de calcul de votre processeur.
===== Pré-requis =====
 
  * Disposer des [[:sudo|droits d'administration]].
  * Disposer d'une connexion à Internet configurée et activée.
===== Installation =====

==== Depuis les dépôts ====

Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>boinc]]**

==== Depuis les sources ====

Bien que ceci soit conseillé sur leur site, la version disponible en 2020 est complètement obsolète et son installation n'est pas fonctionnelle par manque d'une librairie (libwebkitgtk-1.0-0).
\\ Vous pouvez vérifier les versions disponibles ainsi que leurs dates de publication sur la page [[https://boinc.berkeley.edu/download_all.php]]

=== Installation ===

  * Déplacer le script dans un dossier //mes logiciels//, pour l'exemple ici il s'agira de //~/bin//((~ étant votre Dossier Personnel))
  * Ne créez pas de sous-dossier //boinc//, le script d'installation s'en occupera tout seul.
  * Ensuite depuis un [[:terminal]] saisissez les [[:commande_shell|commandes]] suivantes : <code>cd ~/bin
sh boinc_7.4.22_x86_64-pc-linux-gnu.sh</code> (à adapter au nom du script téléchargé)
  * Si l'installation s'est bien déroulée un nouveau dossier est créé dans votre dossier ~/bin, il s'agit de "BOINC"
  * Allez dans ce dossier pour lancez l'interface de configuration <code>cd ~/bin/BOINC
./run_manager</code>

===== Configuration =====

==== Rejoindre un projet ====
De nombreux projets sont proposés pour Boinc dans les domaines biologique, physique, nanotechnologique, astronomique, climatologique, mathématique, informatique... Voir [[http://fr.wikipedia.org/wiki/Liste_des_projets_BOINC|la liste des projets]].

<note tip>Voici un exemple d'[[:tutoriel:boinc_covid19|installation et configuration pour contribuer à une recherche sur COVID-19]]</note>

Pour rejoindre un projet, lancez **Boinc Manager**.{{ :utilisateurs:arverne73:boinc_eoan_2.png?direct&300|}}
Une fenêtre devrait vous proposer de rejoindre un projet. Si ce n'est pas le cas, cliquez sur "Outils" -> "Ajouter un projet".
Sélectionnez le projet que vous voulez rejoindre dans la liste qui apparaîtra, et cliquez sur "Suivant".
Ensuite, cliquez sur: "Non, nouvel utilisateur" puis laissez-vous guider afin de vous inscrire au projet.
Finalement, un message vous confirmant l'attachement au projet devrait apparaître: cliquez sur "Fin".

Boinc va maintenant récupérer des calculs puis va commencer à les exécuter. Vous n'avez même pas besoin d'être connecté à internet pour que Boinc fonctionne. Il vous faut être connecté afin qu'il envoie les résultats et qu'il reçoive de nouveaux calculs.

===== Utilisation =====
Une fois installé, le logiciel **BOINC Manager** permet de contrôler le client BOINC. Il est accessible dans les applications.{{ :utilisateurs:arverne73:boinc_eoan_1.png?direct&300|}}

Notez bien que le client se lance automatiquement au démarrage d'Ubuntu.


==== Mettre Boinc en "pause" ====
Lorsque vous voulez faire faire une pause à Boinc afin d'exécuter un programme gourmand en ressource, cliquez sur le bouton "Suspendre". Le bouton "Reprendre" relance les calculs.

==== Les menus sous Boinc ====
La configuration de Boinc est relativement simple. Nous allons voir ici à quoi servent chacun des menus.

  * Fichier: permet de fermer le manager. Attention, cette procédure ne ferme pas les processus de calculs ouvert par Boinc.
  * Affichage : il vous permet de basculer entre une vue "simple" et une vue "avancée" plus descriptive.
  * Options : en vue "avancée", permet des réglages importants notamment sur l'occupation des processeurs, du disque système et du réseau. BOINC est très gourmand par défaut utilisant 100% des processeurs, tout le disque, etc. Votre machine risque de devenir bruyante, chauffer... Néanmoins, il tient compte de votre propre activité sur le poste. Vous pouvez moduler cela ici. 
  * Outils: permet de gérer vos comptes ou de rejoindre un nouveau projet.
  * Activité: seulement visible en vue "avancée", il permet de choisir l'activité du processeur ou l'activité réseau.
  

==== Calculs avec le GPU =====
Si vous avez une carte graphique **Nvidia CUDA** ou **ATI Stream**, vous pouviez l'utiliser pour calculer plus rapidement. Vous deviez disposer d'une version de Boinc supérieure à 6.3 (Octobre 2008). Consultez au passage la [[http://boinc.berkeley.edu/wiki/GPU_computing#Attach_to_projects_with_GPU_applications|liste des projets supportant les calculs GPU]].

Ceci ne semble plus d'actualité.


===== Comment quitter BOINC =====
Boinc est un DAEMON. Si vous avez besoin d'arrêter votre ordinateur, faites-le. Au prochain démarrage, Boinc continuera les calculs qu'il effectuait avant l'arrêt sans problème. \\ Pour empêcher cela décochez "Exécuter le client" dans le menu Options / Autres options, en vue "Simple". \\ Pour suspendre le travail de BOINC, utiliser le bouton "Suspendre" dans le manager.

===== Ligne de commande  =====

==== La doc ====
Les détails de la commande boinccmd sont décrits sur [[http://boinc.berkeley.edu/wiki/Boinccmd_tool|cette page]] ou simplement dans le manuel :
  man boinccmd

==== Exemple ====

=== Connaître la version ===
<code>boinccmd -V</code>
=== Arrêter le daemon=== 

<code>sudo /etc/init.d/boinc-client stop</code>

Relancer le daemon:
<code>sudo /etc/init.d/boinc-client start</code>

=== Dire au client BOINC de quitter ===

<code>boinccmd --quit</code>

=== Connaître l'"account key" de votre compte ===
  boinccmd --lookup_account url_du_projet login mot_de_passe
Cela retourne l'"account key", une chaîne de 32 chiffres.

=== Rejoindre un projet  ===
  boinccmd --host localhost  --project_attach URL_du_projet account_key
Voilà. Au bout de quelques minutes le travail devrait commencer. On peut avoir des infos via la commande 
  boinccmd --get_state
Il semble que parfois il faille "forcer" le départ via
  boinccmd --set_run_mode always

===== Voir aussi =====
  * Le site de Boinc (EN): [[http://boinc.berkeley.edu/]]
  * Liste des projets : [[http://fr.wikipedia.org/wiki/Liste_des_projets_BOINC]]
  * Le site de l'alliance francophone : [[http://www.boinc-af.org/]]

----

//Contributeurs :  [[utilisateurs:gregm54]] [[utilisateurs:lo72]] [[utilisateurs:arverne73]]//